How It Works
Metrics stored in AWS CloudWatch can be streamed to other systems using AWS Kinesis Data Firehose. Honeycomb provides an endpoint that is compatible with CloudWatch Metric Streams, and will store the data it receives in a dataset for easy querying.- AWS CloudWatch with Metric Streams pointed at AWS Kinesis.
- Kinesis forwards data to Honeycomb over Data Firehose, which is configured to format data with OpenTelemetry Line Protocol (OTLP).
Terraform Module
Honeycomb provides a Terraform module to automate configuration of CloudWatch Metric Streams to Honeycomb. Refer to the module’s README for instructions on its use. Alternatively, read below to learn how to manually configure CloudWatch using the AWS Console.Configuration Using the AWS Console
-
Create a new Kinesis Data Firehose Delivery Stream.
The stream’s Source should be Direct PUT and Destination set to Honeycomb with the following details:
- Honeycomb Kinesis endpoint:
- US instance:
https://api.honeycomb.io/1/kinesis_events/your_dataset_name - EU instance:
https://api.eu1.honeycomb.io/1/kinesis_events/your_dataset_name
- US instance:
- API Key: Enter a Honeycomb API key capable of sending events.
- Content Encoding: Set to GZIP.
- Honeycomb Kinesis endpoint:
-
Create a new CloudWatch Metric Stream.
- Open the CloudWatch AWS console at
<https://console.aws.amazon.com/cloudwatch/>. - In the left navigation pane, choose Metrics → Streams.
- Click the Create metric stream button.
- Choose the CloudWatch metric namespaces to include in the metric stream.
- Choose Select an existing Firehose owned by your account, and select the Firehose Delivery Stream you created earlier.
- Specify an Output Format of OpenTelemetry 1.0.
- Optionally, specify a name for this metric stream under Metric Stream Name.
- Choose Create metric stream.
- Open the CloudWatch AWS console at
Honeycomb supports receiving metrics via the OTLP format.
Metrics sent through CloudWatch must have the specified output format of OpenTelemetry to be properly processed by Honeycomb.